Project management involves, in part, planning, organizing, securing and/or managing resources to bring about the successful completion of a project with respect to specific project goals and objectives. Typically, project managers manually manage resources using techniques such as waterfall, iterative/incremental, or agile techniques. At the program or project portfolio level, especially in large organizations, multiple projects are typically more difficult to manage than managing a single project. For example, large project portfolios are typically subjected to various subjective and objective constraints coming from stakeholders (e.g., portfolio managers, project managers, and/or customers). In addition, management of project portfolios is difficult to scale due to often significant fluctuations in constraints (e.g., start/end dates) and resource availability.
In order to address issues of project portfolio management, organizations typically establish a project management office (PMO) and/or simply allocate additional resource overhead as a buffer. However, establishment and funding of a PMO and/or allocating additional resources add costs to the financial bottom line of an organization. Project portfolio managers also typically make use of commercially available software programs to assist them in the management of a project portfolio. Project management software programs typically provide reporting and analytic tools that allow the user to view project resource allocations in order to facilitate decision making. In addition, such software programs typically allow the user to manually allocate resources to projects. However, project management software programs that require the user to manually allocate resources is labor intensive, allows for single pass per criteria only, and can be prone to error.